package org.javahispano.javacup.tacticas.tacticas_aceptadas.emandem.controladores;

import java.util.LinkedList;
import java.util.List;

import org.javahispano.javacup.modelo.comando.Comando;
import org.javahispano.javacup.modelo.util.Posicion;
import org.javahispano.javacup.modelo.engine.SituacionPartido;

public class CPU {
	private LinkedList<Comando> comandos = new LinkedList<Comando>();
	
	public List<Comando> getComandosEjecutar(SituacionPartido situacionPartido) {
		
		this.comandos.clear();
		
		ControladorEstadoPartido.getInstance().analizarYCargarInformacion(situacionPartido);
		
		Posicion[] alineacionActual = ControladorAlineaciones.getInstance().getAlineacionActual(situacionPartido);
		
		this.comandos.addAll(ControladorPortero.getInstance().getComandos(situacionPartido, alineacionActual));
		
		this.comandos.addAll(ControladorJugadores.getInstance().getComandos(situacionPartido, alineacionActual));
	        
	    return comandos;
	}   
}